home *** CD-ROM | disk | FTP | other *** search
- /* GViewLib text 1995 H.Ogasawara(COR.) */
-
-
- #include <corlib.h>
- #include <gviewlib.h>
- #include <microfio.h>
-
- static int GlobalCount= 0,
- XP= 80, YP= 0;
-
- static GVIEW *
- Load( file )
- char *file;
- {
- GVIEW *gp;
- static Exec();
- if( gp= (GVIEW*)bmp_start( file ) ){
- gp->EventExec= Exec;
- GViewOpen( XP, YP, gp, file, Close|Push );
- GlobalCount++;
- return gp;
- }
- return 0;
- }
-
- static
- Exec( wp, info, gp )
- WindowID wp;
- EventInfo *info;
- GVIEW *gp;
- {
- switch( info->option ){
- case EventClose:
- MFREE( gp );
- if( !--GlobalCount )
- WindowConnectionClose();
- return TRUE;
- case EventMouseSwitch:
- if( info->RightON ){
- extern Slow, Info;
- static char *menu[]= {
- "○展開速度優先",
- "○画質優先",
- "--------------",
- "○SIZE表示あり",
- "○SIZE表示なし",
- };
- menu[0][1]= 0x9c-Slow;
- menu[1][1]= 0x9b+Slow;
- menu[3][1]= 0x9b+Info;
- menu[4][1]= 0x9c-Info;
- WindowGetEventInfo( info );
- switch( PopUpMenu(info->x-1,info->y+1, menu, 5,12 ) ){
- case 0: Slow= 0; break;
- case 1: Slow= 1; break;
- case 3: Info= 1; break;
- case 4: Info= 0; break;
- }
- return TRUE;
- }
- break;
- case EventUser:
- switch( info->ComData ){
- case UserStrings: {
- unsigned char **pp= info->ComBuffer;
- for(; *pp ; Load( *pp++ ) );
- info->ComData= -1;
- }
- break;
- case UserString:
- Load( info->ComBuffer );
- info->ComData= -1;
- break;
- }
- return TRUE;
- }
- return FALSE;
- }
-
- WindowMain( argc, argv )
- char **argv;
- {
- char *file= NULL;
- extern Slow, Info;
- argc= AnalyzeArgs( argc, argv, &XP, &YP, 0, 0 );
- for(; --argc ;){
- if( **++argv == '-' ){
- switch( (*argv)[1] ){
- case 's':
- Slow= (*argv)[2]&1;
- break;
- case 'i':
- Info= (*argv)[2]&1;
- break;
- }
- }else
- file= *argv;
- }
- if( file && Load( file ) )
- return;
- Err2( "BMP loader v1.00 1995 H.Ogasawara(COR.)\r\n",
- "usage: bmp [-xN] [-yN] [-sN] [-iN] file.bmp" );
- WindowSendSignal( WindowProcessID, SignalKill, NULL );
- }
-
- Err2( m1, m2 )
- char *m1, *m2;
- {
- ConsoleOpen();
- ConsolePrint( "bmp:" );
- ConsolePrint( m1 );
- ConsolePrint( m2 );
- ConsolePrint( "\r\n" );
- }
-